﻿(function ($) {

    var _defaults =
        {
            //defaultEnableRefresh: true,
            onRefresh: function (title, index) { },
        };
    var _methods = {
        refresh: function (jq, which) {
            jq.each(function () {
                var tabs = $(this);
                var tab = tabs.tabs("getTab", which);
                var index = tabs.tabs("getTabIndex", tab);
                var opts = tab.panel("options");
                if ((opts.href == null || opts.href == "") && (opts.content == null || opts.content=="")) { return; }
                tabs.tabs("update", { tab: tab, options: opts });
                //tabs.tabs("options").onRefresh.call(tabs, opts.title, index);
                tabs.tabs("refresh");
            });

            
        },
        //update: function (jq, param) {
        //    jq.each(function () {
        //        var tabs = $(this);
        //        var tabsOpts = tabs.tabs("options");
        //        var index = tabs.tabs("getTabIndex", param.tab);
        //        var options = param.options
        //        var opts = $.extend({ refreshable: tabsOpts.defaultEnableRefresh }, options);
        //        var toolsBak = opts.tools;
        //        var hrefBak = opts.href, contentBak = opts.content;
        //        var _tabRefreshButton = { iconCls: "icon-mini-refresh" };
        //        if (opts.refreshable == true) {
        //            if ($.type(opts.tools) == "array") { opts.tools = opts.tools.concat(_tabRefreshButton); } else { opts.tools = [_tabRefreshButton]; };
        //        }
        //        $.extend(tabs.tabs("getTab", index).panel("options"), { tools: toolsBak, href: hrefBak, content: contentBak });
        //    })
        //    }
    }
    $.extend($.fn.tabs.defaults, _defaults);
    $.extend($.fn.tabs.methods, _methods);
})
(jQuery);